\paragraph{Purpose}
After identifying regions, it is necessary to clarify these regions.  The majority of this step involves  determining where the code should live.  That is to say, computation will happen on the device, but some might be on the host.  The variables will exist either on the host or the device or both.  In the preprocessor directives, we exchange MPI library calls for our CUDA library calls.   
